home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
T-TPUG Old Monthly Disks
/
(c)ta.d64
/
home budget.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
3KB
|
134 lines
10 REM*********************
20 REM* *
30 REM* HOME BUDGET *
40 REM* BY *
50 REM* BRIAN DOBBS *
60 REM* *
70 REM* TIMMINS,ONTARIO *
80 REM* *
90 REM*********************
100 POKE53280,12:POKE53281,0:DIMA$(13,13):GOTO180
110 GOSUB1230
120 OPEN14,8,14,"0:"+NM$+",S,":X=1
130 Y=2
140 INPUT#14, A$(X,Y):Y=Y+1:IFY>13THEN160
150 GOTO140
160 X=X+1:IFX>13THENCLOSE14:GOTO180
170 GOTO130
180 PRINT"[147]"TAB(14)"BUDGET MENU"
190 PRINTTAB(10)"1-W[146]RITE MONTHLY BILLS":PRINT""
200 PRINTTAB(10)"2-V[146]IEW MONTHLY BILLS":PRINT""
210 PRINTTAB(10)"3-B[146]ARCHART TREND OF BILLS":PRINT""
220 PRINTTAB(10)"4-P[146]RINTER TREND OF BILLS":PRINT""
230 PRINTTAB(10)"5-S[146]AVE DATA TO DISK":PRINT""
240 PRINTTAB(10)"6-L[146]OAD DATA FROM DISK":PRINT""
250 PRINTTAB(10)"7-CREATE INITIAL FILE":PRINT""
260 PRINTTAB(12)"SELECT CHOICE ?":Y=0
270 GETAN$:IFAN$=""THEN270
280 FORX=1TO7:IFAN$=MID$("WVBPSLC",X,1)THENY=X
290 NEXT:ONYGOTO410,300,500,730,960,110,990:GOTO180
300 PRINT"[147]":INPUT" ENTER MONTH TO VIEW";AN$:GOSUB1020
310 PRINT"[147]":PRINTTAB(15)AN$:PRINT"":Y=2
320 PRINTA$(1,Y):Y=Y+1:IFY>13THEN340
330 GOTO320
340 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145]":Y=2
350 PRINTTAB(15)A$(X,Y):Y=Y+1:IFY>13THEN370
360 GOTO350
370 GOSUB1300
380 PRINT"MONTHLY TOTAL"TAB(14)Q+AA+BB
390 GETA$:IFA$=""THEN390
400 GOTO180
410 PRINT"[147]":INPUT" WHAT MONTH TO WRITE BILLS";AN$
420 GOSUB1020
430 Y=2:PRINT"[147]":PRINTTAB(15)AN$:PRINT""
440 PRINTA$(1,Y):Y=Y+1:IFY>13THEN460
450 GOTO440
460 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145]":Y=2
470 PRINTTAB(15):INPUTA$(X,Y)
480 Y=Y+1:IFY>13THEN180
490 GOTO470
500 INPUT"[147] ENTER NAME OF BILL";AN$
510 FORP=2TO13
520 IFAN$=A$(1,P)THENY=P
530 NEXT
540 PRINT" WHAT IS MAXIMUM SCALE FOR "A$(1,Y):INPUT" ";B
550 PRINT"[147]":PRINTTAB(20-(LEN(A$(1,Y))/2))A$(1,Y)
560 PRINT""B:Z=0
570 Z=Z+(B/20):IFZ=BTHEN590
580 PRINTINT(B-Z):GOTO570
590 R=1992:X=2:T=56264:U=2
600 FORE=RTOR-(40*((VAL(A$(X,Y))/(B/20))))STEP-40:POKEE,224:NEXT
610 FORF=TTOT-(40*((VAL(A$(X,Y))/(B/20))))STEP-40:POKEF,U:NEXT
620 R=R+2:X=X+1:T=T+2:U=U+1
630 IFU=3THENU=1
640 IFX=14THEN660
650 GOTO600
660 R=1992:T=56264:POKER,138:POKET,1:POKER+2,134:POKET+2,1:POKER+4,141
670 POKET+4,1:POKER+6,129:POKET+6,1:POKER+8,141:POKET+8,1:POKER+10,138
680 POKET+10,1:POKER+12,138:POKET+12,1:POKER+14,129:POKET+14,1:POKER+16,147
690 POKET+16,1:POKER+18,143:POKET+18,1:POKER+20,142:POKET+20,1:POKER+22,132
700 POKET+22,1
710 GETA$:IFA$=""THEN710
720 GOTO180
730 OPEN4,4:PRINT#4,TAB(38)"BUDGET 1984":PRINT#4:L=2:M=7
740 PRINT#4," BILL ";
750 PRINT#4,"JANUARY FEBUARY MARCH APRIL MAY JUNE"
760 GOSUB850
770 L=2:M=7
780 GOSUB890
790 L=8:M=13:PRINT#4," BILL ";
800 PRINT#4,"JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER"
810 GOSUB850
820 L=8:M=13
830 GOSUB890
840 CLOSE4:RESTORE:GOTO180
850 FORY=1TO13:Z=20-LEN(A$(1,Y))
860 PRINT#4,A$(1,Y)TAB(Z);
870 FORI=LTOM:PRINT#4,(A$(I,Y))TAB(10-LEN(A$(I,Y)));:NEXTI:PRINT#4,CHR$(10)
880 NEXTY:PRINT#4:RETURN
890 PRINT#4,"MONTHLY TOTAL"TAB(6)
900 FORX=LTOM
910 GOSUB1300
920 C=Q+AA+BB:C$=STR$(C)
930 PRINT#4,Q+AA+BBTAB(9-LEN(C$));:NEXTX
940 PRINT#4,CHR$(10)
950 RETURN
960 GOSUB1230
970 OPEN14,8,14,"@0:"+NM$+",S,W"
980 X=1:GOTO1170
990 PRINT"[147] A TOTAL OF 12 BILLS WILL BE ENTERED.":X=1:Y=2
1000 INPUT"NAME OF BILL";A$(X,Y):Y=Y+1:IFY>13THEN1070
1010 GOTO1000
1020 FORW=1TO12
1030 READD$
1040 IFAN$=D$THENX=W+1
1050 NEXT
1060 RESTORE:RETURN
1070 PRINT"[147]":X=2
1080 Y=2
1090 A$(X,Y)="0"
1100 Y=Y+1:IFY>13THEN1120
1110 GOTO1090
1120 X=X+1:IFX>13THEN1140
1130 GOTO1080
1140 GOSUB1230
1150 OPEN14,8,14,"0:"+NM$+",S,W"
1160 X=1:PRINT" CREATING INITIAL FILE[146]"
1170 Y=2
1180 PRINT#14,A$(X,Y):Y=Y+1:IFY>13THEN1200
1190 GOTO1180
1200 X=X+1:IFX>13THEN1220
1210 GOTO1170
1220 CLOSE14:GOTO180
1230 INPUT"[147] FILENAME[146]";NM$
1240 PRINT" PRESS 'F1[146]' TO CONTINUE"
1250 GETA$:IFA$=""THEN1250
1260 IFA$=CHR$(133)THENRETURN
1270 GOTO1260
1280 DATA JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST,SEPTEMBER,OCTOBER
1290 DATA NOVEMBER,DECEMBER
1300 Q=(VAL(A$(X,2)))+(VAL(A$(X,3)))+(VAL(A$(X,4)))+(VAL(A$(X,5)))
1310 AA=(VAL(A$(X,6)))+(VAL(A$(X,7)))+(VAL(A$(X,8)))+(VAL(A$(X,9)))
1320 BB=(VAL(A$(X,10)))+(VAL(A$(X,11)))+(VAL(A$(X,12)))+(VAL(A$(X,13)))
1330 RETURN